In 1998, Congress amended the Rehabilitation Act to require Federal agencies to make their electronic and information technology accessible to people with disabilities stating, “inaccessible technology interferes with an individual's ability to obtain and use information quickly and easily.” Therefore, Section 508 was enacted to eliminate barriers in information technology, to make available new opportunities for people with disabilities, and to encourage development of technologies that will help achieve these goals. The law applies to all Federal agencies when they develop, procure, maintain, or use electronic and information technology. Under Section 508 (29 U.S.C. '794d), agencies must give disabled employees and members of the public access to information that is comparable to the access available to others. Moreover, it is important for companies to also adhere to the Section 508 standards to ensure their electronic and information technology may be maintained, procured, and used by any federal agencies or other groups bound to the same standards.
In order to ensure that electronic content conforms to the rules of Section 508, the product (e.g., web site, web page, electronic form, etc.) should be checked for accessibility. For example, the checking includes ensuring that if a page includes an image there is text in the hyper text mark-up language (HTML) that can take the place of the picture for a browser that does not display pictures (e.g., a browser for the blind). In another example, there may be tags within a table (e.g., column and row tags) which allow a user to follow the table without needing to see it. In yet another example, a check may be necessary to ensure that a form field (e.g., user name and password) is correctly coded. That is, when a field is highlighted there is text or other type of prompt (e.g., voice) that describes the information requested by the field in question. This may include many types of visual and/or audio HTML tags.
The current method for analyzing an electronic product (e.g., a static web page) for conformation with Section 508 at the developmental level requires an analyzer to search out the web site in question (e.g., on a network), analyze the web page and store the results on a database. A report may then be requested by the testing party wherein the results stored on the database are formatted (e.g., as an itemized list) and returned to the testing party.
However, the current method is cumbersome, and as technology progresses the ability for an analyzer to reach into a network for a specific web page is becoming more difficult. For example, in order to more efficiently maintain a network, instead of every machine having its own Internet protocol (IP) address, a block of computers on a network may dynamically allocate the IP addresses using DHCP. That is, the machines connected with the network may have IP addresses that change over time. For example, when a computer is on the network it may have one IP address, but then when it leaves the network it may give up the IP address, and the address may be assigned to another computer on the network. Thus, there is no need for a network to maintain a fixed, large list of IP addresses for each of the computers capable of accessing the network. Instead, there may be a pool of IP addresses which can cover the same number of computers with a much smaller framework.
As the use of DHCP grows, actually finding a machine on a network becomes more difficult. Instead of simply inputting a network address, accessing a domain name server, and mapping directly to the machine having the network content, due to dynamic allocation of IP addresses, a user must now input the machine identifier as well. This is a cumbersome and difficult proposal. In general, machine identifiers are large and inconvenient to remember, input, pass on, and the like.
Therefore, when testing a web page on the network, assurances are made that instead of using a domain name, the machine name is input. In addition, the use of the machine name may not allow the developer access to the computer due to possible incorrect mapping, thereby preventing the analyzer from finding the machine and ultimately the web page to be analyzed. Furthermore, as the number of machines accessing the dynamic network increase, the mapping and finding problems associated with finding a single machine become even more deleterious.
Due to the above stated issues, testing electronic and information technology to ensure proper operation under Section 508 has become difficult and time consuming. Moreover, when a change is made to Section 508, each previously tested page is found and tested again thereby encompassing additional time-consuming mapping, machine naming, and searching to find the correct electronic information. Furthermore, the pages are tested statically and cannot be tested dynamically. For example, once the information is analyzed, a second report is accessed and the web page updated accordingly. If any errors were present, the page must then be tested again after all the changes have been made and a third report accessed.